#include <iostream>
#include <vector>
using namespace std;

class Solution {
public:
    int singleNumber(vector<int>& nums) {
        int bitarr[32]={0};
    //统计32位上有多少个1
        for(auto e:nums)
        {
            for(int i=0;i<32;i++)
            {
                if(e&(1<<i))
                {
                    bitarr[i]++;
                }
            }
        }
        //求出结果的32位数
//        for(int i =0;i<32;i++)
//        {
//            bitarr[i]%=3;
//        }
//        
//        //还原结果
//       int ret=0;
//        long long tw=1;
//        for(int i =0;i<32;i++)
//        {
//            ret+=bitarr[i]*tw;
//           tw*= 2;
//        }
    int ret=0;
    for(int i=0;i<32;i++)
    {
        if(bitarr[i]%3==1)
        {
            ret^=(1<<i);
        }
    }
    return ret;
    }
};